package com.kmxd.ams.infra.search.entity;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.kmxd.ams.infra.arrange.entity.Box;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * 盒级 // @TableName("f1_1_box")
 *
 * @author ZuoLG
 * @since 2022-07-20
 */
@EqualsAndHashCode(callSuper = true)
@Data
@Schema(description = "盒级")
@ToString(callSuper = true)
public class BoxEs extends Box {

  private static final long serialVersionUID = 1L;

  /** 门类名称 */
  private String archTypeName;

  /** 门类类型 */
  private String archModel;

  private String archModelName;

  /** 知悉范围划分：按本部门 */
  private Boolean authDepartment;

  /** 知悉范围划分：按创建人 */
  private Boolean authUser;

  // 知悉范围内
  /** 在线浏览 */
  private Boolean onlineBrowser;

  /** 在线打印 */
  private Boolean onlinePrint;

  /** 下载 */
  private Boolean download;

  /** 下载源文件 */
  private Boolean downloadSource;

  /** 现场借阅 */
  private Boolean liveRead;

  /** 外借 */
  private Boolean lendOut;

  /** 复制外发 */
  private Boolean copySend;

  /** 摘录 */
  private Boolean excerpt;

  /** 知悉范围外 */
  /** 在线浏览 */
  private Boolean outOnlineBrowser;

  /** 在线打印 */
  private Boolean outOnlinePrint;

  /** 下载 */
  private Boolean outDownload;

  /** 下载源文件 */
  private Boolean outDownloadSource;

  /** 现场借阅 */
  private Boolean outLiveRead;

  /** 外借 */
  private Boolean outLendOut;

  /** 复制外发 */
  private Boolean outCopySend;

  /** 摘录 */
  private Boolean outExcerpt;

  /** 通用利用权限 */
  /** 在线浏览 */
  private Boolean otherOnlineBrowser;

  /** 在线打印 */
  private Boolean otherOnlinePrint;

  /** 下载 */
  private Boolean otherDownload;

  /** 下载源文件 */
  private Boolean otherDownloadSource;

  /** 现场借阅 */
  private Boolean otherLiveRead;

  /** 外借 */
  private Boolean otherLendOut;

  /** 复制外发 */
  private Boolean otherCopySend;

  /** 摘录 */
  private Boolean otherExcerpt;

  /** 公司id */
  @JsonSerialize(using = ToStringSerializer.class)
  private Long comId;

  private Boolean browserFile;
  private Boolean outBrowserFile;
  private Boolean otherBrowserFile;

  /** 单位名称 */
  private String comName;
}
